from api_py.enums.api import API
from api_py.generate_case.c01_auth_login import case01_auth_login
from api_py.generate_case.c02_logout import case02_logout
from api_py.generate_case.c04_auth_me import case04_auth_me
from api_py.generate_case.c05_user_ms import case05_user_ms
from api_py.generate_case.c06_user_list import case06_user_list
from api_py.generate_case.c08_user_ms_supervisor import case08_user_ms_supervisor
from api_py.generate_case.c09_user_ms_counselor import case09_user_ms_counselor
from api_py.generate_case.c10_1_user_ms_supervisor_list import case10_1_user_ms_supervisor_list
from api_py.generate_case.c10_2_user_ms_counselor_list import case10_2_user_ms_counselor_list
from api_py.generate_case.c11_user_ms_supervisor import case11_user_ms_supervisor
from api_py.generate_case.c12_user_ms_counselor import case12_user_ms_counselor
from api_py.generate_case.c13_user_ms_supervisor import case13_user_ms_supervisor
from api_py.generate_case.c14_user_ms_counselor import case14_user_ms_counselor
from api_py.generate_case.c15_user_ban import case15_user_ban
from api_py.generate_case.c16_user_list import case16_user_list
from api_py.generate_case.c17_user_password import case17_user_password
from api_py.generate_case.c18_user_update import case18_user_update
from api_py.generate_case.c20_user_active import case20_user_active
from api_py.generate_case.c21_user_maxconsults import case21_user_maxconsults
from api_py.generate_case.c22_arrange import case22_arrange
from api_py.generate_case.c23_arrange_batch import case23_arrange_batch
from api_py.generate_case.c24_arrange_theday import case24_arrange_theday
from api_py.generate_case.c25_arrange import case25_arrange
from api_py.test.after_each import *
from api_py.test.before_each import *
from api_py.test.request_method import *

"""
    key : API接口的枚举类
    value1 : 创建该API测试用例的方法
    value2 : 一个将所在API的测试用例的请求参数，请求头，请求体打包为一个request的方法
    value3 : 每一个API的每一个测试用例before each方法
    value4 : 每一个API的每一个测试用例after each方法
    value3 : 一个将所在API的测试用例的预期结果和实际返回结果比较的方法
"""
api_life_cycle = {
    API.API01_AUTH_LOGIN: [case01_auth_login, api01_auth_login, api_01_after_each],  # 接口1
    API.API02_LOGOUT: [case02_logout, api02_logout, api_02_after_each],  # 接口2

    API.API04_AUTH_ME: [case04_auth_me, api04_auth_me, api_04_after_each],  # 接口4
    API.API05_USER_MS: [case05_user_ms, api05_user_ms, api_05_after_each],  # 接口5
    API.API06_USER_LIST: [case06_user_list, api06_user_list, api_06_after_each],  # 接口6

    API.API08_USER_MS_SUPERVISOR : [case08_user_ms_supervisor, api_08_after_each], # 接口8
    API.API09_USER_MS_COUNSELOR : [case09_user_ms_counselor, api_09_after_each], # 接口9

    API.API10_1_USER_MS_SUPERVISOR_LIST: [case10_1_user_ms_supervisor_list, api10_1_user_ms_supervisor_list, api_10_1_after_each],  # 接口10
    API.API10_2_USER_MS_COUNSELOR_LIST: [case10_2_user_ms_counselor_list, api10_2_user_ms_counselor_list, api_10_2_after_each],  # 接口10.2

    API.API11_USER_MS_SUPERVISOR: [case11_user_ms_supervisor, api11_user_ms_supervisor, api_11_after_each],  # 接口12
    API.API12_USER_MS_COUNSELOR: [case12_user_ms_counselor, api12_user_ms_counselor, api_12_after_each],  # 接口12

    API.API13_USER_MS_SUPERVISOR: [case13_user_ms_supervisor, api13_user_ms_supervisor, api_13_after_each],  # 接口13
    API.API14_USER_MS_COUNSELOR: [case14_user_ms_counselor, api14_user_ms_counselor, api_14_after_each],  # 接口14
    API.API15_USER_BAN: [case15_user_ban, api15_user_ban, api_15_after_each],  # 接口15
    API.API16_USER_LIST: [case16_user_list, api16_user_list, api_16_after_each],  # 接口15
    API.API17_USER_PASSWORD : [case17_user_password, api17_user_password, api_17_after_each], # 接口17
    API.API18_USER_UPDATE : [case18_user_update, api18_user_update, api_18_after_each], # 接口18
    API.API20_USER_ACTIVE: [case20_user_active, api20_user_active, api_20_after_each],  # 接口20
    API.API21_USER_MAXCONSULTS: [case21_user_maxconsults, api21_user_maxconsults, api_21_after_each],  # 接口21
    API.API22_ARRANGE: [case22_arrange, api22_arrange, api_22_after_each],  # 接口22
    API.API23_ARRANGE_BATCH: [case23_arrange_batch, api23_arrange_batch, api_23_after_each],  # 接口23
    API.API24_ARRANGE_THEDAY: [case24_arrange_theday, api24_arrange_theday, api_24_after_each],
    API.API25_ARRANGE: [case25_arrange, api25_arrange, api_25_after_each],  # 接口25
}
